package com.scut.fy.admin.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.scut.fy.admin.model.vo.UserVo;

/**
 * 用户注册服务
 *
 * @author JY
 * @version 1.0
 * @date 2021/9/15
 */
public interface UserService {
    /**
     * 获取用户信息
     * @param userId
     * @return
     */
    public UserVo getUser (long userId);

    /**
     * 获取用户信息
     * @param userId
     * @return
     */
    public Page<UserVo> getUser (Page<Long> userIds);

    /**
     * 插入用户数据
     * 可用于用户注册
     * @param userVo
     * @return 返回插入用户的id
     */
    public long insertUser (UserVo userVo);
    /**
     * 更新用户信息，并返回用户id
     * @param userVo 传入参数均为非加密数据
     * @return
     */
    public long updateUser (UserVo userVo);

    /**
     * 更新用户的密码过期时间
     * 自动延后90天
     * @param userId
     * @return 返回更新后的日期
     */
    public boolean updateUserPwdTime(long userId);



    /**
     * 校验username的密码是否正确,如果正确返回userVo，如果不正确返回空
     * @param userName
     * @param password 没有md5加密过的密码
     * @return
     */
    public UserVo checkUserPwd (String userName, String password);



}
